<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

</body>
<script>
    // exec()   用规则检索字符串,将字符串中符合规则的某个或某段字符串 提取出来放到数组中  => 检索成功返回数组 失败返回null

    // var date = "2022-9-16 16:49:35";
    // var reg = /\d{4}-\d{1,2}-\d{1,2}/;

    // // console.log(reg.test(date));  //是否存在符合规则的
    // console.log(reg.exec(date));


    // 群组:
    // 在正则表达式匹配过程中,先将整个表达式匹配一遍,有符合规则的内容,就放到数组中,之后在依次将()内的子表达式匹配,按顺序放到数组中
    var date = "Fir 2022-9-16 16:49:35";
    var reg = /(\d{4})-(\d{1,2})-(\d{1,2})/;
    console.log(reg.exec(date));

    // ?:  指定匹配模式后面的字符必须被匹配，但又不返回这些字符
    // (?:pattern) 会作为匹配检验，并出现在匹配字符结果里面，但是跟()的区别是，它不作为子匹配返回；

    var date = "Fir 2022-9-16 16:49:35";
    var reg = /(?:\d{4})-(?:\d{1,2})-(\d{1,2})/;
    console.log(reg.exec(date));

</script>

</html>